package leetCode.secondWeek;

/**
 * 想象你是那个在格子上行走的小人，格子里面的数字代表“能量”，你需要“能量”才能继续行走。
 *
 * <p>每次走到一个格子的时候，你检查现在格子里面的“能量”和你自己拥有的“能量”哪个更大，取更大的“能量”。
 *
 * <p>如果你有更多的能量，你就可以走的更远啦！~
 */
public class Code_55 {
  public boolean canJump(int[] nums) {
    if (nums.length == 0) {
      return false;
    }
    int energy = nums[0], i = 1;
    for (; energy != 0 && i < nums.length; i++) {
      energy--;
      if (energy < nums[i]) {
        energy = nums[i];
      }
    }
    return i == nums.length;
  }
}
